package cn.kgc.jdbc.test;

import cn.kgc.jdbc.entity.Usr;
import cn.kgc.jdbc.util.DruidUtil;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanHandler;

import javax.sql.DataSource;
import java.sql.SQLException;

/**
 * @author mosin
 * date 2022/2/12
 * @version 1.0
 * 使用 DBUtils 工具类实现数据查询
 */
public class DBUtilsTest01 {

    public static void main(String[] args) {

        //获取数据库连接池
        DataSource dataSource = DruidUtil.getDataSource();
        // 创建 QueryRunner 的实体类对象 用于执行 数据库的增删改查操作
        QueryRunner runner = new QueryRunner(dataSource);
        String sql = "select id,username,password,birth, create_time as createTime from usr where id = ?";
        try {
            /**
             * Usr  发送参数  设置参数 处理结果集
             *参数1： 发送的sql语句
             * 参数2: 返回结果的类型   ResultSetHandler接口   BeanHandler子类  返回一个对象类
             * 参数3： sql语句中需要的参数  不定参  多个参数之间使用逗号分割
             */
            Usr user = runner.query(sql, new BeanHandler<>(Usr.class), 1);
            System.out.println("user = " + user);
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }

    }

}
